<?php
// +----------------------------------------------------------------------
// | OneThink [ WE CAN DO IT JUST THINK IT ]
// +----------------------------------------------------------------------
// | Copyright (c) 2013 http://www.onethink.cn All rights reserved.
// +----------------------------------------------------------------------
// | Author: 麦当苗儿 <zuojiazi@vip.qq.com> <http://www.zjzit.cn>
// +----------------------------------------------------------------------

namespace Home\Controller;
/**
 * 文件控制器
 * 主要用于下载模型的文件上传和下载
 */

class FileController extends HomeController {
	/* 文件上传 */
	public function upload(){
		$return  = array('status' => 1, 'info' => '上传成功', 'data' => '');
		/* 调用文件上传组件上传文件 */
		$File = D('File');
		$file_driver = C('DOWNLOAD_UPLOAD_DRIVER');
		$info = $File->upload(
			$_FILES,
			C('DOWNLOAD_UPLOAD'),
			C('DOWNLOAD_UPLOAD_DRIVER'),
			C("UPLOAD_{$file_driver}_CONFIG")
		);

		/* 记录附件信息 */
		if($info){
			$return['data'] = think_encrypt(json_encode($info['download']));
			$return['info'] = $info['download']['name'];
		} else {
			$return['status'] = 0;
			$return['info']   = $File->getError();
		}
dump($return);
		/* 返回JSON数据 */
		$this->ajaxReturn($return);
	}

	/* 下载文件 */
	public function download($id = null){
		if(empty($id) || !is_numeric($id)){
			$this->error('参数错误！');
		}

		$logic = D('Download', 'Logic');
		if(!$logic->download($id)){
			$this->error($logic->getError());
		}
	}

    /**
     * 上传图片
     * @author huajie <banhuajie@163.com>
     */
    public function uploadPicture(){
        //TODO: 用户登录检测
        /* 返回标准数据 */
        $return  = array('status' => 1, 'info' => '上传成功', 'data' => '');

        /* 调用文件上传组件上传文件 */
        $Picture = D('Picture');
        $pic_driver = C('PICTURE_UPLOAD_DRIVER');
        $info = $Picture->upload(
            $_FILES,
           array('rootPath'=>'./Uploads/Picture/'),
            C('PICTURE_UPLOAD_DRIVER'),
            C("UPLOAD_{$pic_driver}_CONFIG")
        ); //TODO:上传到远程服务器

        /* 记录图片信息 */
        if($info){
            $return['status'] = 1;
            $return = array_merge($info['download'], $return);
        } else {
            $return['status'] = 0;
            $return['info']   = $Picture->getError();
        }

        /* 返回JSON数据 */
        $this->ajaxReturn($return);
    }
    public function save(){
    	$arr = explode('base64,', $_POST['image']);
    	$a = base64_decode($arr[1]);
    	$file_path =  $_SERVER['SCRIPT_FILENAME'];  // 返回  入口文件 index.php 的系统据对路径

    	$dir = dirname($file_path);
    	$url = $dir . '/Uploads/simg';
        //炸开拼接显示
    	$nameArr = explode('.', $_POST['filename']);
    	$filename = md5($nameArr[0].rand(0,9999)).'.'.$nameArr[1];
    	$url = $url.'/'.$filename;
    	//想文件添加数据
        file_put_contents($url, $a);
    	$data['path'] = '/Uploads/simg/'.$filename;
        //存入图片表
        $cover_id = D('Picture')->add($data);
        $id = $_SESSION['onethink_home']['uid'];
        //修改图片
        $list['id'] = $id;
        $list['logo'] = $cover_id;
        $result = D('UserMember')->save($list);
    	$this->ajaxReturn($result);
    }
}
